package org.youyee.game.event
{
	import flash.events.Event;
	
	/**
	 * 所有和场景上的物体相关的事件，此事件默认冒泡 
	 * @author youyee
	 * 
	 */	
	public class MapObjectEvent extends Event
	{
		/**
		 * 需要请求层级管理器刷新层级 
		 */		
		public static const NEED_REFRESH_DEPTH:String = "needRefreshDepth";
		
		/**
		 * 当物品销毁的时候发送此事件 
		 */		
		public static const OBJECT_DESTROY:String = "objectDestroy";
		
		/**
		 * 当物体位置发生改变的时候 
		 */		
		public static const POSTION_CHANGE:String = "positionChange";
		
		/**
		 * 当物体方向发生改变的时候 
		 */		
		public static const DIRECTION_CHANGE:String = "directionChange";
		
		/**
		 * 物体在编辑的时候被聚焦 
		 */		
		public static const OBJECT_FOCUS:String = "objectFocus";
		
		/**
		 * 物品被编辑后改变属性的时候发出的时间 
		 */		
		public static const OBJECT_MODIFY:String = "objectModify";		
		
		/**
		 * 事件携带的数据 
		 */		
		public var data:*;
		
		/**
		 * 构造函数 
		 * @param type 事件的类型
		 * @param dispatchData 需要跟随事件一起发送数据
		 * 
		 */		
		public function MapObjectEvent(type:String, dispatchData:*=null)
		{
			this.data = dispatchData;
			super(type, true, true);
		}
	}
}